package kr.hkit.powerjava.chapter13; //수업 중

import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.HeadlessException;
import java.awt.Image;
import java.awt.Toolkit;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

class MainPanel extends JPanel {

	public MainPanel() {
		JButton btn01 = new JButton("버튼1"); // 기본값은 다 true상태
		btn01.setBorderPainted(false); // 디폴트가 경계선 나옴.
		btn01.setContentAreaFilled(false); // 바탕색이 없음.
		btn01.setEnabled(false); // 비활성화.

		JButton btn02 = new JButton("버튼2"); // 버튼 생성
		btn02.setRolloverEnabled(false); // 마우스 대면 경계를 진하게 하는것

		JLabel lbl01 = new JLabel(); // 단순 메세지 출력시. //스크린 사이즈 화면출력
		// lbl01.setText("Screen Size : (" +
		// screenSize.getWidth()+", "+screenSize.getHeight()+")");
		lbl01.setText("Screen Size :");

		add(lbl01);
		add(btn01);
		add(btn02);
		setToolTipText("컴포넌트 추가 패널");
	}
}

class TfPanel extends JPanel {

	public TfPanel() {

		JTextField jtf01 = new JTextField(10); // 컬럼의 수가 10개인 것
		JTextField jtf02 = new JTextField("텍스트 필드 테스트", 10);
		add(jtf01);
		add(jtf02);
	}
}

class MyFrame extends JFrame {

	public MyFrame() throws HeadlessException {
		init();
	}

	private void init() {

		Toolkit tool = Toolkit.getDefaultToolkit();
		Dimension screenSize = tool.getScreenSize();
		Dimension frameSize = new Dimension(300, 200);

		// 스크린 정가운데에 창 출력
		int x = (int) (screenSize.getWidth() / 2 - frameSize.getWidth() / 2);
		int y = (int) (screenSize.getHeight() / 2 - frameSize.getHeight() / 2);
		setLocation(x, y);
		setSize(frameSize);

		// 아이콘 바꾸기
		Image img = tool.getImage("./src/kr/hkit/powerjava/chapter13/Hydrangeas.jpg");
		setIconImage(img);

		setTitle("Frame Test2");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

		setLayout(new FlowLayout()); // 컨텐트 배치 방식, //기본 좌->우, 위->아래 배치

		add(new MainPanel()); // 패널을 프레임 컨텐트 영역에 추가
		add(new TfPanel());
		pack();

		setVisible(true);

	}
}

public class FrameTest {
	public static void main(String[] args) {

		new MyFrame();

		/*
		 * JFrame f = new JFrame("Frame Test"); f.setSize(new Dimension(300,
		 * 200)); //dimension쓰면 재사용가능 //실행시 기본좌표는 왼쪽상단. 0,0
		 * f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true);
		 */

	}
}

